Time domain equalizer and method

ABSTRACT

Time domain equalizer determination for discrete multitone systems by tone error minimization from a starting point of a single-tone equalizer.

BACKGROUND OF THE INVENTION

[0001] The invention relates to electronic devices, and, more particularly, to equalization in multi-tone receivers and corresponding circuitry and methods.

[0002] Digital subscriber line (DSL) technologies provide potentially large bandwidth (e.g., up to 20 MHz for subscribers close to the central office) for digital communication over existing telephone subscriber lines (the copper plant). The subscriber lines can provide this bandwidth despite their original design for only voice band (0-4 kHz) analog communication. In particular, ADSL (asymmetric DSL) adapts to the characteristics of the subscriber line by using a discrete multi-tone (DMT) line code with the number of bits per tone (sub-carrier) adjusted to channel conditions. The bits of a codeword are allocated among the sub-carriers for modulation to form an ADSL symbol for transmission. FIG. 2 illustrates the use of the Fast Fourier transform in the system having, for example, 256 tones with each tone treated as a QAM channel (except dc tone 0) and so the kth tone encoding corresponds with a complex number X(k); 0≦k≦255. Extending to 512 tones by conjugate symmetry allows the 512-point IFFT to yield real samples x(n), 0≦n≦511, of the transformed block (symbol); and a DAC converts these samples into a segment of the transmitted waveform x(t).

[0003] The non-ideal impulse response of the transmission channel leads to interference of successive symbols (blocks), so each symbol is extended with a (discardable) cyclic prefix to allow for simplified equalization when the channel memory is less than or equal to the cyclic prefix length. For example, with a cyclic prefix of length 32 and symbol size 512 there are 544 samples transmitted; namely, x(480), x(481), . . . , x(510), x(511), x(0), x(1) . . . , x(479), x(480), . . . , x(510), x(511). Because the cyclic prefix contains duplicative information, shorter cyclic prefixes increase the overall transmission bit rate. Hence, various methods to shorten the effective channel impulse response with a time domain equalizer (TEQ) and thus maximize transmission bit rate have been proposed. For example, Arslan et al, Equalization for Discrete Multitone Transceivers to Maximize Bit Rate, 49 IEEE Tr. Sig. Proc. 1123 (2001) design a TEQ by minimizing the sum of the intersymbol interference power plus noise power for a given signal power. Nevertheless, these methods do not guarantee a TEQ that will be close to optimal in terms of maximizing the overall data rate and minimizing computational intensity.

[0004] In another approach, van Acker et al, Per Tone Equalization for DMT-Based Systems, 49 IEEE Tr. Comm. 109 (2001) translate the TEQ into frequency domain equalizers (FEQs), one FEQ for each tone; this allows optimization within each tone separately. But for systems with a large number of tones, such as ADSL with 256 tones, this becomes computationally burdensome.

SUMMARY OF THE INVENTION

[0005] The present invention provides time domain equalizer (TEQ) design methods for multitone systems and a single-tone TEQ starting point. This allows for the rapid determination of the optimal TEQ during modem training for the multitone system.

BRIEF DESCRIPTION OF THE DRAWINGS

[0006]FIG. 1 is a flow diagram for a preferred embodiment method.

[0007]FIG. 2 shows functional blocks of a mutltone system.

[0008]FIG. 3 illustrates a multitone receiver.

DETAILED DESCRIPTION OF THE PREFERED EMBODIMENTS

[0009] 1. Overview

[0010] The preferred embodiment methods provide a time domain equalizer (TEQ) for discrete multitone (DMT) communication systems by maximizing the overall communication bit rate. FIG. 1 is a flow diagram for first preferred embodiment methods, and FIGS. 2-3 illustrate heuristic functional blocks of corresponding DMT systems. The receiver of FIG. 3 has a single input TEQ (to effectively shorten the transmission channel impulse response) together with a 1-tap (multiplier) frequency domain equalizer (FEQ) for each tone.

[0011] The preferred embodiment TEQ methods maximize the overall bit rate by minimizing the product of the mean square errors of the tones being used; and the minimization method starting point is taken as an explicit TEQ design for a single-tone system. The preferred embodiment methods can be used to set TEQ tap weights (coefficients) during training sessions in a multitone communications system. The minimization method may be an approximation method and need not find an exact global minimum.

[0012] Preferred embodiment communications systems use preferred embodiment methods. In preferred embodiment communications systems customer premises modems and central office modems could each include one or more digital signal processors (DSPs) and/or other programmable devices with stored programs for performance of the signal processing of the preferred embodiment methods. Alternatively, specialized circuitry could be used. The modems may also contain analog integrated circuits for amplification of inputs to or outputs and conversion between analog and digital; and these analog and processor circuits may be integrated as a system on a chip (SoC). The stored programs may, for example, be in ROM or flash EEPROM integrated with the processor or external. Exemplary DSP cores could be in the TMS320C6xxx or TMS320C5xxx families from Texas Instruments.

[0013] The preferred embodiment methods include complex TEQ by optimization (section 2), real TEQ by optimization (section 3), complex TEQ by gradient analysis (section 4), real TEQ by gradient analysis (section 5), and single-tone TEQs for starting points in the preceding methods (section 6).

[0014] 2. Complex TEQ Optimization Preferred Embodiments

[0015]FIG. 1 is a flow diagram for a first preferred embodiment method for the time domain equalizer (TEQ) and frequency domain equalizers (FEQs) in a discrete multitone (DMT) receiver as heuristically illustrated in FIG. 3. In particular, the method takes as inputs the number of tones (N) which is also the number of samples constituting a symbol, the cyclic prefix length (P), and the number of taps for the TEQ (L+1), plus measured signal-to-noise ratios (SNRs) of the tones and correlations of known transmitted and received signals (as would be determined during a training session). The method outputs the tap weights, w(j) for 0≦j≦L, of the TEQ plus for each tone k a complex multiplier, g(k), (the 1-tap FEQ).

[0016] To describe the method consider some notation: let X(k) for 0≦k≦N/2−1 denote the complex sub-symbol (e.g., point of a QAM constellation) for tone k data which eventually will be transmitted. Extend the X(k) by conjugate symmetry: X(N−k)=X(k)* for 1≦k≦N/2−1 (take X(0) and X(N/2) as both real), so the IFFT of the X(k) yields N real x(m) for 0≦m≦N−1 which can be viewed as samples of a transmitted time domain analog signal x(t). The cyclic prefix adds P samples x(N−P), x(N−P+1), . . . , x(N−1) to the beginning of the N samples x(0), x(1), . . . , x(N−1) to form the (N+P)-sample block for serial modulation and transmission. For typical ADSL take N=512 and P=32.

[0017] Let y(0), y(1), . . . , y(N+P−1) be the (N+P) serially-received samples, so thus y(n)=Σh(m)x(n−P−m) where h(n) is the transmission channel impulse response and x(.) for negative index refers to either the cyclic prefix or preceding transmitted block (intersymbol interference). Consequently, the TEQ of length L+1 has the output z(n)=Σ_(0≦m≦L) w(m)y(n−m). Samples z(0), z(1), . . . , z(P−1) correspond to the cyclic prefix and are discarded; the N samples of interest are z(P), z(P+1), . . . , z(P+N−1). Denote by z the N-dimensional vector with components z(P), z(P+1), . . . , z(P+N−1) and denote by w the (L+1)-dimensional vector with components equal to the tap weights w(j) of the TEQ. Then z=Yw where Y is the N×(L+1) matrix with (m,n)^(th) component equal to y(P+m−n) where the rows are numbered 0≦m≦N−1 and the columns numbered 0≦n≦L. That is, $\begin{matrix} {z = \begin{bmatrix} {z(P)} \\ {z\left( {P + 1} \right)} \\ \cdots \\ {z\left( {P + N - 2} \right)} \\ {z\left( {P + N - 1} \right)} \end{bmatrix}} \\ {w = \begin{bmatrix} {w(0)} \\ {w(1)} \\ \cdots \\ {w\left( {L - 1} \right)} \\ {w(L)} \end{bmatrix}} \\ {Y = \begin{bmatrix} {y(P)} & {y\left( {P - 1} \right)} & \cdots & {y\left( {P - L + 1} \right)} & {y\left( {P - L} \right)} \\ {y\left( {P + 1} \right)} & {y(P)} & \cdots & {y\left( {P - L + 2} \right)} & {y\left( {P - L + 1} \right)} \\ \cdots & \cdots & \cdots & \cdots & \cdots \\ {y\left( {P + N - 2} \right)} & {y\left( {P + N - 3} \right)} & \cdots & {y\left( {P + N - 1 - L} \right)} & {y\left( {P + N - 2 - L} \right)} \\ {y\left( {P + N - 1} \right)} & {y\left( {P + N - 2} \right)} & \cdots & {y\left( {P + N - L} \right)} & {y\left( {P + N - 1 - L} \right)} \end{bmatrix}} \end{matrix}$

[0018] Denote the N×N DFT matrix as F; that is, F(k,n)=e^(−j2πkn/N) for 0≦k,n≦N−1. Then apply the FFT to z to transform back to frequencies (tones) and multiply each tone by its FEQ weight (g(k) for tone k), to thereby estimate the input sub-symbol X(k), as: $\begin{matrix} {{X^{est}(k)} = {{g(k)}{\sum\limits_{0 \leq n \leq {N - 1}}{{F\left( {k,n} \right)}{z\left( {P + n} \right)}}}}} \\ {= {{g(k)}{\sum\limits_{0 \leq n \leq {N - 1}}\quad {\sum\limits_{0 \leq m \leq L}{{F\left( {k,n} \right)}{y\left( {P + n - m} \right)}{w(m)}}}}}} \\ {= {{g(k)}{\sum\limits_{0 \leq m \leq L}{{S\left( {k,m} \right)}{w(m)}}}}} \end{matrix}$

[0019] where S(k,m) is the sliding FFT of y( ) defined as

S(k,m)=Σ_(0≦n≦N−1) F(k,n) y(P+n−m)

[0020] That is, for each m in the range 0≦m≦L, S(k,m) is the k^(th) tone of the DFT of the length-N sequence y(P−m), y(P−m+1), . . . , y(P−m+N−1), which is a slide-by-m back in time of the sequence y(P), y(P+1), . . . , y(P+N−1).

[0021] The foregoing can be written in matrix form as X^(est)=GFYw=GSw where G is the diagonal matrix of FEQ elements g(k). Let f^(T)(k) be the kth row of F; then s^(T)(k)=f^(T)(k)Y is an (L+1)-component vector of tone k of the sliding FFT of y.

[0022] The first preferred embodiment TEQ method maximizes the bit rate for a DMT system and/or receiver in line with the following explanation.

[0023] (a) Express the bit rate as $\begin{matrix} {R = {\sum\limits_{k}{\log_{2}\left( {1 + {{SNR}(k)}} \right)}}} \\ {= {\log_{2}{\prod\limits_{k}^{\quad}\left( {1 + {{SNR}(k)}} \right)}}} \\ {\cong {\log_{2}{\prod\limits_{k}^{\quad}{{SNR}(k)}}}} \end{matrix}$

[0024] where the sum and products are over the data-carrying tones k, and SNR(k) is the signal-to-noise ratio for tone k. Received periodic DMT frames provide estimates for SNR(k), and SNR(k) determines whether tone k can be used for carrying data. And since the logarithm is a monotonically increasing function, maximizing the bit rate is equivalent to maximizing π_(k) SNR(k).

[0025] (b) Presume that the transmitted power is the same for all tones during the training to determine the TEQ tap weights; then SNR(k) for tone k is inversely proportional to e(k), the mean square error (MSE) of the estimate for X(k). In particular, using w^(T)s(k)=s^(T)(k)w, e(k) is given by: $\begin{matrix} {{e(k)} = {E\left\lbrack {{{{g(k)}w^{T}{s(k)}} - {X(k)}}}^{2} \right\rbrack}} \\ {= {{{{g(k)}}^{2}w^{T}{E\left\lbrack {{s(k)}{s^{H}(k)}} \right\rbrack}w^{*}} - {{g(k)}w^{T}{E\left\lbrack {{s(k)}{X(k)}^{*}} \right\rbrack}} -}} \\ {{{{g(k)}^{*}{E\left\lbrack {{s^{H}(k)}{X(k)}} \right\rbrack}w^{*}} + {E\left\lbrack {{X(k)}}^{2} \right\rbrack}}} \end{matrix}$

[0026] where ^(H) denotes hermitian conjugate (transpose plus complex conjugate). Then maximizing the product of the SNR(k)s is equivalent to minimizing the product of the e(k)s. Of course, E[s(k)s^(H)(k)], E[s^(H)(k) X(k)], and E[|X(k)|²] are estimated during training sessions using known sequences of symbols {X(k)}.

[0027] (c) Minimize the product of the e(k)s first with respect to the FEQ g(k)s. Because g(k) only appears in e(m) for m=k, minimizing the product is the same as minimizing each e(k) with respect to its g(k). Thus solve for g(k) such that ∂e(k)/∂g(k)=0. The derivative of the real, positive e(k) with respect to the complex g(k) treats e(k) as a function of the two independent complex variables g(k) and g(k)*, and thus e(k) has simple derivatives:

∂e(k)/∂g(k)=g(k)*w ^(T) E[s(k) s ^(H)(k)]w*−w ^(T) E[s(k)X(k)*]

∂e(k)/∂g(k)*=g(k) w ^(T) E[s(k) s ^(H)(k)]w*−E[s ^(H)(k)X(k)]w*

[0028] Solving ∂e(k)/∂g(k)=0 and ∂e(k)/∂g(k)*=0 yields, respectively:

g(k)*=(w ^(T) E[s(k)X(k)*])/(w ^(T) E[s(k)s ^(H)(k)]w*)

g(k)=(E[s ^(H)(k)X(k)]w*)/(w ^(T) E[s(k)s ^(H)(k)]w*)

[0029] Of course, these two expressions are complex conjugates and there is only one complex solution. Substituting these g(k) and g(k)* into e(k) gives: $\begin{matrix} {{e_{g}(k)} = {{S_{X}(k)} - {\left( {w^{T}{E\left\lbrack {{s(k)}{X(k)}^{*}} \right\rbrack}{E\left\lbrack {{s^{H}(k)}{X(k)}} \right\rbrack}w^{*}} \right)/\left( {w^{T}{E\left\lbrack {{s(k)}{s^{H}(k)}} \right\rbrack}w^{*}} \right)}}} \\ {= {{S_{X}(k)} - {\left( {w^{T}{M^{sX}(k)}w^{*}} \right)/\left( {w^{T}{M^{ss}(k)}w^{*}} \right)}}} \\ {= {\left( {w^{T}\left\{ {{{S_{X}(k)}{M^{ss}(k)}} - {M^{s\quad X}(k)}} \right\} w^{*}} \right)/\left( {w^{T}{M^{ss}(k)}w^{*}} \right)}} \end{matrix}$

[0030] where the transmitted power in tone k, E[|X(k)|²], is denoted S_(X)(k), and the (L+1)×(L+1) positive-definite matrices M^(sX)(k) and M^(ss)(k) are defined as:

M ^(sX)(k)=E[s(k)X(k)*]E[s ^(H)(k)X(k)]

M ^(ss)(k)=E[s(k)s ^(H)(k)]

[0031] Note that e_(g)(k) is homogeneous of order 0 in w, w*. In effect, the magnitude dependence has been extracted by the g(k)s and a constraint such as ∥w∥=1 could be imposed.

[0032] Following section 3 considers the case of a real TEQ, and in such a case the positive definite matrices can effectively be replaced by their real parts.

[0033] (d) Determine the complex TEQ from w_(opt) which minimizes the product of the foregoing e_(g)(k)s; that is, find the complex w_(opt): $\begin{matrix} {w_{opt} = {\arg \quad {\min\limits_{w}{\prod\limits_{k}^{\quad}\quad {e_{g}(k)}}}}} \\ {= {\arg \quad {\min\limits_{w}{\prod\limits_{k}^{\quad}\quad \left\lbrack {\left( {w^{T}\left\{ {{{S_{X}(k)}{M^{ss}(k)}} - {M^{sX}(k)}} \right\} w^{*}} \right)/\left( {w^{T}{M^{ss}(k)}w^{*}} \right)} \right\rbrack}}}} \end{matrix}$

[0034] Various multidimensional optimization methods may be used, such as Nelder and Mead simplex method, Powell's method, conjugate gradient methods, and so forth. These methods essentially require a good starting point, w_(initial), and then converge to a global minimum, w_(opt), by variation using the product. A good starting point is determined in following section 6 by finding an explicit solution for the case of a single tone. And the convergence to a global minimum can be stopped after a set number of iterations or when the error is less than a threshold, and the then-current approximate solution used to define the TEQ (and thus FEQ) tap weights.

[0035] Further, a starting point of a single-tone solution from section 6 can be expanded to select a set of single-tone solutions (such as every fifth tone) and then solve for the corresponding TEQs; then take the final TEQ from these candidate TEQs. For example, ADSL downstream may use tones 40-255. Thus apply section 6 to find single-tone solutions for tones 40, 45, 50, . . . , 80 and then use each of these nine single-tone solutions as a starting point and find the consequent nine TEQs. Pick the best of these nine TEQs as the TEQ for the receiver.

[0036] In summary, a training session in a DMT system transmits X(k)s with known powers and patterns so the receiver can measure received y(k)s and determine the elements of the matrices M^(ss) and M^(sX) and provide these as inputs for the w optimization problem. The computed w and g(k)s are then used to set the equalizer tap weights in the receiver. Of course, the w and g(k)s may be approximate solutions of the corresponding equations.

[0037] 3. Real TEQ Optimization Preferred Embodiments

[0038] For a real TEQ (all of the tap weights w(j) are real numbers), the preferred embodiments follow the same steps as in the preceding complex TEQ description but with the real parts of the positive definite matrices. Indeed, for real w, $\begin{matrix} \begin{matrix} {{w^{T}\left\{ {{S_{X}(k){M^{ss}(k)}} - {M^{sX}(k)}} \right\} w^{*}} = {{Re}\left\{ {w^{T}\left\{ {{{S_{X}(k)}{M^{ss}(k)}} - {M^{sX}(k)}} \right\} w^{*}} \right\}}} \\ {= {w^{T}{Re}\left\{ {{{S_{X}(k)}{M^{ss}(k)}} - {M^{sX}(k)}} \right\} w}} \end{matrix} \\ {and} \\ {\quad \begin{matrix} {{w^{T}{M^{ss}(k)}w^{*}} = {{Re}\left\{ {w^{T}{M^{ss}(k)}w^{*}} \right\}}} \\ {= {w^{T}{Re}\left\{ {M^{ss}(k)} \right\} w}} \end{matrix}} \end{matrix}$

[0039] Thus define e_(real-g)(k) as:

e _(real-g)(k)=(w ^(T) Re{S _(X)(k) M ^(ss)(k)−M ^(sX)(k)}w*)/(w ^(T) Re{M ^(ss)(k)}w*)

[0040] Essentially, the positive definite matrices M^(ss)(k) and M^(sX)(k) have been replaced by their real parts, and e_(real-g)(k) is defined for complex w.

[0041] Then find the real w which minimizes the product of the e_(real-g)(k)s and thereby define the real TEQ. $\begin{matrix} {w_{{real}\text{-}{opt}} = {\arg {\min\limits_{realw}{\prod\limits_{k}^{\quad}\quad {e_{{real}\text{-}g}(k)}}}}} \\ {= {\arg {\min\limits_{realw}{\prod\limits_{k}^{\quad}\quad \left\lbrack {\left( {w^{T}{Re}\left\{ {{{S_{X}(k)}{M^{ss}(k)}} - {M^{s\quad X}(k)}} \right\} w} \right)/\left( {w^{T}{Re}\left\{ {M^{ss}(k)} \right\} w} \right)} \right\rbrack}}}} \end{matrix}$

[0042] Again, various multidimensional optimization methods may be used, such as Nelder and Mead simplex method, Powell's method, conjugate gradient methods, an so forth. These methods essentially require a good starting point, w_(real-initial), and then converge to a minimum, w_(real-opt), by variation using the product. Again, a good real starting point is determined in following section 6 by finding an explicit solution for the case of a single tone; and a set of good starting points may be used to find a set of candidate TEQs. A final TEQ is selected from this set of candidate TEQs.

[0043] 4. Complex TEQ by Gradient Analysis Preferred Embodiments

[0044] Rather than directly computing the minimization as in the preceding sections, the minimization problem can be converted to a system of equations by noting that at the optimal w (and w*) the gradient of the product in the direction of the optimal w^(T) and w* equals 0 (a column vector and a row vector, respectively). This provides simpler equations to solve for w in place of the optimization. Of course, the product of the e_(g)(k)s is homogeneous of order 0 in w, w* due to the optimization with respect to g(k), so the radial derivative with respect to ∥w∥ is always 0 and a constraint such as ∥w∥=1 may be imposed.

[0045] The derivative of the product with respect to w^(T) is:

∂(π_(m) e _(g)(m))/∂w _(T)=(π_(m) e _(g)(m)) (Σ_(k)(∂e _(g)(k)/∂w ^(T))/e _(g)(k))

[0046] Thus for the derivative of the product to vanish, the sum of the logarithmic derivatives must vanish, and so at the optimal w:

Σ_(k)((∂e _(g)(k)/∂w ^(T))/e _(g)(k))=0

[0047] Similarly for the w* derivative.

[0048] As seen in the foregoing, each e_(g)(k) is of the form w^(T)Aw*/w^(T)Bw* where A=S_(X)(k)M^(ss)(k)−M^(sX)(k) and B=M^(ss)(k). Thus (∂e_(g)(k)/∂w^(T))/e_(g)(k) is of the form Aw*/w^(T)Aw*−Bw*/w^(T)Bw*, and similarly (∂e_(g)(k)/∂w*)/e_(g)(k)=w^(T)A/w^(T)Aw*−w^(T)B/w^(T)Bw*. Substituting these expressions for the derivatives into the preceding equations for the optimal w and w* yield:

0=Σ_(k)({S _(X)(k)M ^(ss)(k)−M ^(sX)(k)}w*)/(w ^(T) {S _(X)(k) M ^(ss)(k)−M ^(sX)(k)}w*)−(M ^(ss)(k)w*)/(w ^(T) M ^(ss)(k) w*)

0=Σ_(k)(w ^(T) {S _(X)(k)M ^(ss)(k)−M ^(sX)(k)})/(w ^(T) {S _(X)(k) M ^(ss)(k)−M ^(sX)(k)}w*)−(w ^(T) M ^(ss)(k))/(w ^(T) M ^(ss)(k)w*)

[0049] Of course, the second set of equations is just the hermitian conjugate of the first set of equations, so there is only one independent set of equations. Note that the constraint ∥w∥=1 avoids the trivial solution of ∥w∥→∞.

[0050] These equations can be solved by numerical methods such as the Newton-Raphson multidimensional root finding method and Broyden's method. And as with the optimization methods, these numerical methods require a good starting point. So again use one or more a single-tone solutions from section 6 to generate one or more solutions, and take the best solution as the TEQ tap weights for the receiver.

[0051] 5. Real TEQ by Gradient Analysis Preferred Embodiments

[0052] For a real w use e_(real-g)(k) and solve the analogous directional derivative equations:

0=Σ_(k)(w ^(T) Re{S _(X)(k) M ^(ss)(k)−M ^(sX)(k)})/(w ^(T) Re{S _(X)(k) M ^(ss)(k)−M ^(sX)(k)}w)−(w ^(T) Re{M ^(ss)(k)})/(w ^(T) Re{M ^(ss)(k)}w)

[0053] As with the complex w of section 4, these equations can be solved by numerical methods such as the Newton-Raphson multidimensional root finding method and Broyden's method to yield the tap weights of the TEQ. Again a good starting point is needed for the numerical methods, and following section 6 provides a good starting point. And again multiple starting points may be used to generate multiple candidate real TEQs, and then select the best of the candidates as the TEQ.

[0054] 6. Single-Tone Preferred Embodiments

[0055] The preceding methods typically require a good starting point (w_(initial) or w_(real-initial)) to converge to a global TEQ solution, w_(opt) or w_(real-opt). A preferred embodiment method finds a good starting point for the preceding methods by finding the optimal w_(tonek-opt) or w_(tonek-real-opt) for the case of only tone k being used and then taking w_(initial)=w_(tonek-opt) or w_(real-initial)=w_(tonek-real-opt). For the case of single tone k, the product to minimize is just a single e(k), and the minimization can be explicitly performed. In particular, the preferred embodiments first optimize with respect to w and then solve for g(k).

[0056] (a) For a complex w the g(k) could be absorbed into w and there is a simple solution:

e(k)=g(k) w ^(T) E[s(k)s ^(H)(k)]g(k)*w*−g(k) w ^(T) E[s(k) X(k)*]−E[s ^(H)(k) X(k)]g(k)*w*+E[|X(k)|²]

[0057] Differentiating with respect to w^(T) yields:

∂e(k)/∂w ^(T) =g(k) E[s(k)s ^(H)(k)]g(k)*w*−g(k) E[s(k) X(k)*]

[0058] Thus requiring ∂e(k)/∂w^(T)=0 implies

g(k)*w _(tonek-opt) *=E[s(k)s ^(H)(k)]⁻¹ E[s(k) X(k)*]

[0059] This gives the product g(k)w_(tonek-opt) which determines the TEQ and FEQ up to reciprocal factors. Of course, requiring ∥w∥=1 determines the TEQ and FEQ up to a phase, and g(k) could be taken as real.

[0060] Differentiating with respect to w* leads to the same solution.

[0061] Note that substituting these expressions for w^(T) and w* back into the equation for e(k) gives the minimal value as: $\begin{matrix} {{e_{{tonek}\text{-}\min}(k)} = {{{E\left\lbrack {{s(k)}{s^{H}(k)}} \right\rbrack}^{- 1}{E\left\lbrack {{s^{H}(k)}{X(k)}} \right\rbrack}{E\left\lbrack {{s(k)}{X(k)}^{*}} \right\rbrack}} -}} \\ {{{{E\left\lbrack {{s(k)}{s^{H}(k)}} \right\rbrack}^{- 1}{E\left\lbrack {{s^{H}(k)}{X(k)}} \right\rbrack}{E\left\lbrack {{s(k)}{X(k)}^{*}} \right\rbrack}} -}} \\ {{{{E\left\lbrack {{s^{H}(k)}{X(k)}} \right\rbrack}{E\left\lbrack {{s(k)}{s^{H}(k)}} \right\rbrack}^{- 1}{E\left\lbrack {{s(k)}{X(k)}^{*}} \right\rbrack}} +}} \\ {{E\left\lbrack {{X(k)}}^{2} \right\rbrack}} \\ {= {{E\left\lbrack {{X(k)}}^{2} \right\rbrack} - {{E\left\lbrack {{s^{H}(k)}{X(k)}} \right\rbrack}{E\left\lbrack {{s(k)}{s^{H}(k)}} \right\rbrack}^{- 1}{E\left\lbrack {{s(k)}{X(k)}^{*}} \right\rbrack}}}} \end{matrix}$

[0062] The smallest value of e_(tonek-min)(k) could be used to select among ks to determine which w_(tonek-opt) should be the starting point, or, as previously noted, a set of ks with small e_(tonek-min)(k)s could be used to generate a set of candidate TEQs from which the final TEQ is selected.

[0063] (b) For a real w, use e_(real)(k):

e _(real)(k)=|g(k)|² w ^(T) Re{E[s(k)s ^(H)(k)]}w−w ^(T) Re{g(k) E[s(k) X(k)*]}−Re{g(k)*E[s ^(H)(k) X(k)]}w+E[|X(k)|²]

[0064] Then minimizing e_(real)(k) for real w proceeds as previously by differentiating with respect to w^(T).

∂e _(real)(k)/∂w ^(T) =|g(k)|² Re{E[s(k)s ^(H)(k)]}w−Re{g(k) E[s(k) X(k)*]}

[0065] Thus requiring ∂e_(r)(k)/∂w^(T)=0 implies:

|g(k)|² w=Re{E[s(k)s ^(H)(k)]}⁻¹ Re{g(k) E[s(k) X(k)*]}

[0066] Note that the equation only depends upon the product of the magnitudes |g(k)| and ∥w∥ rather than the magnitudes separately. Thus the constraint |g(k)|=1 can be imposed so the magnitude appears in w. Substituting this w back into e_(real)(k) yields: $\begin{matrix} {{e_{{real}\text{-}w}(k)} = {{E\left\lbrack {{X(k)}}^{2} \right\rbrack} - {{Re}\left\{ {{g(k)}{E\left\lbrack {{s^{T}(k)}{X(k)}^{*}} \right\rbrack}} \right\}}}} \\ {{{Re}\left\{ {{E\left\lbrack {{s(k)}{s^{H}(k)}} \right\}}^{- 1}{Re}\left\{ {{g(k)}{E\left\lbrack {{s(k)}{X(k)}^{*}} \right\rbrack}} \right\}} \right.}} \\ {= {{S_{X}(k)} - {{Re}\left\{ {{g(k)}{E\left\lbrack {{s^{T}(k)}{X(k)}^{*}} \right\rbrack}} \right\}}}} \\ {{{Re}\left\{ {M^{ss}(k)} \right\}^{- 1}{Re}\left\{ {{g(k)}{E\left\lbrack {{s(k)}{X(k)}^{*}} \right\rbrack}} \right\}}} \end{matrix}$

[0067] Because |g(k)|=1, write g(k) as e^(jθ) and use the definition of real part: $\begin{matrix} \begin{matrix} {{2{Re}\left\{ {{g(k)}{E\left\lbrack {{s(k)}{X(k)}^{*}} \right\rbrack}} \right\}} = {2{Re}\left\{ {^{j\quad \theta}{E\left\lbrack {{s(k)}{X(k)}^{*}} \right\rbrack}} \right\}}} \\ {= {{^{j\quad \theta}{E\left\lbrack {{s(k)}{X(k)}^{*}} \right\rbrack}} + {^{{- j}\quad \theta}{E\left\lbrack {{s^{*}(k)}{X(k)}} \right\rbrack}}}} \end{matrix} \\ {and} \\ \begin{matrix} {{2{Re}\left\{ {{g(k)}{E\left\lbrack {{s^{T}(k)}{X(k)}^{*}} \right\rbrack}} \right\}} = {2{Re}\left\{ {^{j\quad \theta}{E\left\lbrack {{s^{T}(k)}{X(k)}^{*}} \right\rbrack}} \right\}}} \\ {= {{^{j\quad \theta}{E\left\lbrack {{s^{T}(k)}{X(k)}^{*}} \right\rbrack}} + {^{{- j}\quad \theta}{E\left\lbrack {{s^{T*}(k)}{X(k)}} \right\rbrack}}}} \end{matrix} \\ {Thus} \\ \begin{matrix} {{4\left( {{S_{x}(k)} - {e_{{real} - w}(k)}} \right)} = {{^{j\quad 2\quad \theta}{E\left\lbrack {{s^{T}(k)}{X(k)}^{*}} \right\rbrack}{Re}\left\{ {M^{ss}(k)} \right\}^{- 1}{E\left\lbrack {{s(k)}{X(k)}^{*}} \right\rbrack}} +}} \\ {{{^{{- j}\quad 2\quad \theta}{E\left\lbrack {{s^{T*}(k)}{X(k)}} \right\rbrack}{Re}\left\{ {M^{ss}(k)} \right\}^{- 1}{E\left\lbrack {{s^{*}(k)}{X(k)}} \right\rbrack}} +}} \\ {{{{E\left\lbrack {{s^{T}(k)}{X(k)}^{*}} \right\rbrack}{Re}\left\{ {M^{ss}(k)} \right\}^{- 1}{E\left\lbrack {{s^{*}(k)}{X(k)}} \right\rbrack}} +}} \\ {{{E\left\lbrack {{s^{T*}(k)}{X(k)}} \right\rbrack}{Re}\left\{ {M^{ss}(k)} \right\}^{- 1}{E\left\lbrack {{s(k)}{X(k)}^{*}} \right\rbrack}}} \end{matrix} \end{matrix}$

[0068] Minimize e_(real-w)(k) by differentiate with respect to θ and set the derivative equal to 0. This yields $\begin{matrix} {{g(k)}^{4} = ^{j\quad 4\quad \theta}} \\ {= {{E\left\lbrack {{s^{T*}(k)}{X(k)}} \right\rbrack}{Re}\left\{ {M^{ss}(k)} \right\}^{- 1}{{E\left\lbrack {{s^{*}(k)}{X(k)}} \right\rbrack}/}}} \\ {{{E\left\lbrack {{s^{T}(k)}{X(k)}^{*}} \right\rbrack}{Re}\left\{ {M^{ss}(k)} \right\}^{- 1}{E\left\lbrack {{s(k)}{X(k)}^{*}} \right\rbrack}}} \end{matrix}$

[0069] This defines g(k) and thus the corresponding w_(tonek-real-opt) from the foregoing expression w=Re{E[s(k)s^(H)(k)]}⁻¹ Re{g(k) E[s(k) X(k)*]}.

[0070] Alternatively, for a real w find the optimal g(k) subject to the constraint |g(k)|=1 by Lagrange multipliers. That is, minimize e_(real-w)(k)+λ(g(k)g(k)*−1) by differentiating with respect to g(k) and λ, and setting the derivative equal to 0 to solve for g(k) and λ. First simplify notation: $\begin{matrix} {{{e_{{real} - w}(k)} + {\lambda \left( {{{g(k)}{g(k)}^{*}} - 1} \right)}} = {{S_{x}(k)} - {{Re}\left\{ {{g(k)}{E\left\lbrack {{s^{T}(k)} \times (k)^{*}} \right\rbrack}} \right\}}}} \\ {{{{Re}\left\{ {M^{ss}(k)} \right\}^{- 1}{Re}\left\{ {{g(k)}{E\left\lbrack {{s(k)}{X(k)}^{*}} \right\rbrack}} \right\}} +}} \\ {{\lambda \left( {{{g(k)}{g(k)}^{*}} - 1} \right)}} \\ {= {{S_{x}(k)} - {{Re}\left\{ {{g(k)}a^{T}} \right\} {Re}\left\{ {{g(k)}b} \right\}} +}} \\ {{\lambda \left( {{{g(k)}{g(k)}^{*}} - 1} \right)}} \\ {= {{S_{x}(k)} - {\left( {{g_{r}a_{r}^{T}} - {g_{i}a_{i}^{T}}} \right)\left( {{g_{r}b_{r}} - {g_{i}b_{i}}} \right)} +}} \\ {{\lambda \left( {g_{r}^{2} + g_{i}^{2} - 1} \right)}} \\ {= {{S_{x}(k)} + {\left( {\lambda - {a_{r}^{T}b_{r}}} \right)g_{r}^{2}} +}} \\ {{{\left( {{a_{r}^{T}b_{i}} + {a_{i}^{T}b_{r}}} \right)g_{r}g_{i}} + {\left( {\lambda - {a_{i}^{T}b_{i}}} \right)g_{i}^{2}} - \lambda}} \end{matrix}$

[0071] where a^(T)=E[s^(T)(k) X(k)*]Re{M^(ss)(k)}⁻¹ and b=E[s(k) X(k)*], so a and b are complex (L+1)-dimensional vectors, g_(r) and g_(i) are the real and imaginary parts of g(k), a_(r) and a_(i) are the real and imaginary parts of a, and b_(r) and b_(i) are the real and imaginary parts of b.

[0072] Then differentiating with respect to each of the three real variables λ, g_(r), and g_(i) and setting the derivatives equal to 0 yields three equations for the optimal g(k) and λ:

g _(r) ² +g _(i) ²−1=0

2g _(r)(λ−a _(r) ^(T) b _(r))+g _(i)(a _(r) ^(T) b _(i) +a _(i) ^(T) b _(r))=0

2g _(i)(λ−a _(i) ^(T) b _(i))+g _(r)(a _(r) ^(T) b _(i) +a _(i) ^(T) b _(r))=0

[0073] Now let the ratio g_(r)/g_(i)=r, then the first equation implies g_(r)=r/{square root}(1+r²) and g_(i)=1/{square root}(1+r²), and the other two equations, after dividing by g_(i), become:

2r(λ−a _(r) ^(T) b _(r))+(a _(r) ^(T) b _(i) +a _(i) ^(T) b _(r))=0

2(λ−a _(i) ^(T) b _(i))+r(a _(r) ^(T) b _(i) +a _(i) ^(T) b _(r))=0

[0074] Solve the second equation for λ and substitute into the first equation:

λ=a _(i) ^(T) b _(i) −r(a _(r) ^(T) b _(i) +a _(i) ^(T) b _(r))/2

2r(a _(i) ^(T) b _(i) −r(a _(r) ^(T) b _(i) +a _(i) ^(T) b _(r))/2−a _(r) ^(T) b _(r))+(a _(r) ^(T) b _(i) +a _(i) ^(T) b _(r))=0

[0075] This last equation is of the form r²+2Ar−1=0 where A=(a_(r) ^(T)b_(r)−a_(i) ^(T)b_(i))/(a_(r) ^(T)b_(i)+a_(i) ^(T)b_(r))=Re{a^(T)b}/Im{a^(T)b}, and has solution r=−A±(1+A²). This then defines g(k) and thus w for the single-tone TEQ.

[0076] 7. Modifications

[0077] The preferred embodiments may be varied while retaining the feature of TEQ determination from a single-tone starting point.

[0078] For example, the minimization of the product of mean square errors may be finding an approximation of the exact minimum such as using only a finite number of iterations in an iterative method; only a subset of the tones may be used for equalizer determination; a training sequence (for auto- and cross-correlation estimation) may use unequal power among the tones; as so forth. 

What is claimed is:
 1. A method of equalizer determination, comprising: (a) providing estimates of correlations of received multitone signals; and (b) determining a set of tap weights for a time domain equalizer from a minimization of the product of tone mean square errors of said multitone signals using said estimates; (c) wherein said minimization includes a multivariable optimization starting at an initial set of tap weights for a time domain equalizer, said initial set of tap weights corresponding to an equalizer for a single tone.
 2. The method of claim 1, wherein: (a) said determining a set of tap weights of step (b) of claim 1 includes determining for each of said tones a 1-tap frequency domain equalizer.
 3. The method of claim 1, wherein: (a) said determining a set of tap weights of step (b) of claim 1 includes determining a plurality of candidate sets of tap weights and selection from said plurality.
 4. The method of claim 1, wherein: (a) said multitone signals are represented as complex numbers; and (b) said tap weights of step (b) of claim 1 are real numbers.
 5. The method of claim 1, wherein: (a) said multitone signals are represented as complex numbers; and (b) said set of tap weights forms a vector with complex magnitude equal to
 1. 6. The method of claim 1, wherein: (a) said determining a set of tap weights of step (b) of claim 1 includes finding an at least approximate solution w of a vector equation of the form Σ_(k)(w ^(T) A _(k) /w ^(T) A _(k) w*−w ^(T) B _(k) /w ^(T) B _(K) w*)=0 where the at least approximate solution has components determining said tap weights.
 7. The method of claim 6, wherein: (a) said at least approximate solution w has real components.
 8. The method of claim 1, wherein: (a) said determining a set of tap weights of step (b) of claim 1 includes finding an at least approximate solution w of a vector equation of the form Σ_(k)(A _(k) w*/w ^(T) A _(k) w*−B _(k) w*/w ^(T) B _(k) w*)=0 where the at least approximate solution has components determining said tap weights.
 9. The method of claim 8, wherein: (a) said at least approximate solution w has real components.
 10. The method of claim 1, wherein: (a) said minimization of step (c) of claim 1 includes selecting from two or more of said multivariable optimizations, said multivariable optimizations with differing initial sets of tap weights corresponding to differing equalizers for differing single tones.
 11. A multitone receiver, comprising: (a) a time domain equalizer; (b) a block transformer coupled to an output of said time domain equalizer; and (c) a plurality of 1-tap frequency domain equalizers, each of said frequency domain equalizers coupled to an output of said block transformer; (d) wherein said time domain equalizer has tap weights characterized by a minimization of the product of tone mean square errors of outputs of said frequency domain equalizers, wherein said minimization includes a multivariable optimization starting at an initial set of tap weights for said time domain equalizer, said initial set of tap weights corresponding to an equalizer for a single tone. 